// 导入依赖模块
yepjs.require("YBA.Data.ajax");

// 用户管理数据接口
yepjs.define("User", {

    NS: "YBA.Data",

    field: {
        /*
         * 获取客户信息列表
         * @data {
            startPos: 当前页数  int  默认为1
            pageSize: 每页显示的记录数  int  默认为10条
            departId: 部门编号  string  可选
            mobile: 手机号码  string  可选
            name: 姓名  string  可选
            username: 用户名  string  可选
        }
         */
        getUserList: function(data, success, error) {
            YBA.Data.ajax({
                url: "/user/list",
                type:"GET",
                data: data,
                success: success,
                error: error
            });
        },
        /*
         * 批量转移用户
         * @data {
            departId:  部门编号  int
            userIdStr: 用户编号  string  多个用户之间用 "," 号隔开，如：1,2,3
        }
         */
        transferUser: function(data, success, error) {
            YBA.Data.ajax({
                url: "/user/transfer",
                type:"GET",
                data: data,
                success: success,
                error: error
            });
        },
        /*
         * 新增用户
         * @data {
            name:    姓名    string    上限10个字符，必填
            status:    用户状态    string    1个字符，(0：正常，1：停用)，必选
            departmentId:    部门编号    string    必选，如果有多级部门，则以最后一级为准
            email:    电子邮箱    string    上限100个字符，必须唯一，必填
            username:    用户名    string    上限30个字符，必须唯一，必填
            password:    密码    string    必填
            mobile:    手机号    string    必须唯一，必填
        }
         */
        addUser: function(data, success, error) {
            YBA.Data.ajax({
                url: "/user/add",
                data: data,
                type: "POST",
                success: success,
                error: error
            });
        },
        /*
         * 查看用户资料
         * @data {
            userId: 用户编号  string  默认为1
        }
         */
        getUserDetail: function(data, success, error) {
            YBA.Data.ajax({
                url: "/user/get",
                type:"GET",
                data: data,
                success: success,
                error: error
            });
        },
        /*
         * 获取用户状态
         * @data {

        }
         */
        getUserStatus: function(data, success, error) {
            success({
                "code":200, // 返回状态码(200：表示操作成功，500：表示服务器异常)
                "desc":"数据查询成功！", // 操作描述
                "obj":{
                    "code":200,
                    "desc":"获取数据成功。",
                    "statusList":[{
                       "id":0,
                       "name":"正常"
                    }]
                }
            });
            return;
            YBA.Data.ajax({
                url: "/user/get_status",
                data: data,
                success: success,
                error: error
            });
        },
        /*
         * 获取用户资料修改数据
         * @data {
            userId: 用户编号  string  默认为1
        }
         */
        getUserDetailForUpdate: function(data, success, error) {
            success({
                "code":200, // 返回状态码(200：表示操作成功，500：表示服务器异常)
                "desc":"数据查询成功！", // 操作描述
                "userObj":{
                    "id":1, // 用户编号
                    "name":"张三", // 姓名
                    "username":"fjs", // 用户名
                    "departId":"10001", // 所属机构编号，多个编号之间用","号隔开，如：1,2,3
                    "customerId":10001, // 客户编号
                    "companyName":"纳网科技", //公司名称
                    "mobile":"13400000000", // 移动电话
                    "email":"123@163.com", // 电子邮箱
                    "status":0// 用户状态(0：正常，1：停用)
                },
                "statusList":[{
                    "key":0,
                    "value":"正常"
                }],
                "companyObj":{
                   "id":2001,  // 编号
                   "name":"纳网科技", // 公司名称
                   "spaceSize":"100GB", // 分配空间
                   "deptList":[{
                        "id":1001, // 部门编号
                        "name":"研发部", // 部门名称
                        "iorder":100, // 排序
                        "level":0, //层级(0：顶级，1：二级部门)
                        "parentId":1, // 上级节点编号
                        "hasChildren":1, //是否包含子节点(0：否，1：是)
                        "childrenList":[{
                            "id":10011, // 部门编号
                            "name":"研发部 - 前端部", // 部门名称
                            "iorder":100, // 排序
                            "level": 1, //层级(0：顶级，1：二级部门)
                            "parentId": 1001, // 上级节点编号
                            "hasChildren":0, //是否包含子节点(0：否，1：是)
                            "childrenList":[]
                        }]
                   }]
                }
            });
            return;
            YBA.Data.ajax({
                url: "/user/update/get",
                data: data,
                success: success,
                error: error
            });
        },
        /*
         * 修改用户
         * @data {
            name:    姓名    string    上限10个字符，必填
            status:    用户状态    string    1个字符，(0：正常，1：停用)，必选
            departmentId:    部门编号    string    必选，如果有多级部门，则以最后一级为准
            email:    电子邮箱    string    上限100个字符，必须唯一，必填
            username:    用户名    string    上限30个字符，必须唯一，必填
            password:    密码    string    必填
            mobile:    手机号    string    必须唯一，必填
        }
         */
        updateUser: function(data, success, error) {
            YBA.Data.ajax({
                url: "/user/update",
                data: data,
                type: "POST",
                success: success,
                error: error
            });
        },
        /*
         * 获取用户可分配空间
         * @data {

        }
         */
        getUserSpace: function(data, success, error) {
            YBA.Data.ajax({
                url: "/user/customer/available_space",
                data: data,
                type: "GET",
                success: success,
                error: error
            });
        },
        /*
         * 追加空间
         * @data {
			id: 用户id  必选
			addSpaceSize: 追加空间大小   必选
        }
         */
        addToSpaceSize: function(data, success, error) {
            YBA.Data.ajax({
                url: "/user/add_space",
                data: data,
                type: "GET",
                success: success,
                error: error
            });
        },
        /*
         * 修改用户密码
         * @data {
            userId:    用户编号    string    必填
            oldPassword:    旧密码    string    必填
            newPassword:    新密码    string    必填
        }
         */
        updateUserPassword: function(data, success, error) {
            YBA.Data.ajax({
                url: "/user/update_password",
                data: data,
                type: "POST",
                success: success,
                error: error
            });
        },
        /*
         * 获取用户使用类型
         * @data {

        }
         */
        getUserType: function(data, success, error) {
            success({
                "code":200,
                "desc":"获取数据成功。",
                "statusList":[{
                   "id":0,
                    "name":"终端"
                }]
            });
            return;
            YBA.Data.ajax({
                url: "/user/get_type",
                data: data,
                success: success,
                error: error
            });
        }
    }
});
